package @{crud.properties.base_package}.@{crud.properties.model}.service;


import com.baomidou.mybatisplus.plugins.Page;

import cn.lvji.core.vo.Grid;
import cn.lvji.core.vo.Response;
import @{crud.properties.base_package}.@{crud.properties.model}.entity.@{crud.table.className};

/**
 * 
 * @{crud.table.remarks}:业务接口类
 * 
 * @author generator
 */
public interface @{crud.table.className}Service {
    
    /**
     * 新增@{crud.table.remarks}
     * 
     * @param @{strutils.toLowerCaseFirst(crud.table.className)} 新增entity
     * @return response
     */
    Response<Void> save(@{crud.table.className} @{strutils.toLowerCaseFirst(crud.table.className)});
    
    
    /**
     * 查询@{crud.table.remarks}
     * 
     * @param id 主键
     * @return @{crud.table.remarks}
     */
    @{crud.table.className} get(Long id);

    
    /**
     * 分页查询@{crud.table.remarks}
     * 
     * @param page 分页对象
     * @param @{strutils.toLowerCaseFirst(crud.table.className)} 搜索entity
     * @return response
     */
    Response<Grid<@{crud.table.className}>> list(Page<@{crud.table.className}> page, @{crud.table.className} @{strutils.toLowerCaseFirst(crud.table.className)});

    
    /**
     * 更新@{crud.table.remarks}
     * 
     * @param @{strutils.toLowerCaseFirst(crud.table.className)} 更新entity
     * @return response
     */
    Response<Void> update(@{crud.table.className} @{strutils.toLowerCaseFirst(crud.table.className)});

    
    /**
     * 删除@{crud.table.remarks}
     * 
     * @param id 主键
     * @return response
     */
    Response<Void> delete(Long id);
}